refactor(rust): use ndarray's built-in generator functions#7
Merged
CodeWithKyrian merged 1 commit intomainfrom Mar 22, 2026
Merged
refactor(rust): use ndarray's built-in generator functions#7CodeWithKyrian merged 1 commit intomainfrom
CodeWithKyrian merged 1 commit intomainfrom
Conversation
Replace manual implementations of linspace, logspace, and geomspace with ndarray's Array::linspace, Array::logspace, and Array::geomspace methods.This leverages ndarray's optimized and well-tested implementations while simplifying our FFI code.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR refactors the FFI generator functions (
linspace,logspace,geomspace) to use ndarray's built-in Array methods instead of manual implementations.Motivation and Context
The manual implementations of these generator functions were duplicating logic that ndarray already provides with optimized and well-tested implementations. By switching to ndarray's built-in methods, we reduce code complexity, improve maintainability, and ensure consistent behavior with upstream ndarray.
What's Changed
linspace.rsto useArray::linspace()with adjusted stop value for endpoint=falselogspace.rsto useArray::logspace()geomspace.rsto useArray::geomspace()with Option handlingBreaking Changes
None. The FFI interface and PHP API remain unchanged.